The present invention relates to the a baseband processor of the orthogonal frequency division multiplexing (OFDM) receiver, and more particularly, to an OFDM baseband processor for the wireless LAN (WLAN) IEEE 802.11a or IEEE 802.11g standards.
Orthogonal frequency division multiplexing (OFDM) is a modulation technique for wireless LAN standards such as IEEE 802.11a or 802.11g. OFDM distributes the data over a large number of carriers (or sub-carriers) that are spaced apart at precise frequencies. This spacing provides the “orthogonality” that prevents the demodulators from seeing frequencies other than their own. Because the data is split for transmission on several sub-carriers, the duration of every transmitted symbol on each sub-carrier is increased, and the amount of crosstalk between symbols or inter-symbol interference (ISI) is reduced. This is the reason why OFDM is so popular among applications for high bit rate communication systems nowadays.
In the IEEE 802.11a standard, the carrier frequency is 5 GHz. There are 64 implied subcarrier frequencies with a spacing of 312.5 kHz(=20 MHz/64, wherein 20 MHz is the channel bandwidth). Among the 64 implied subcarriers, there are 52 nonzero subcarriers, which includes 48 data subcarriers carrying data and four pilot subcarriers used as pilot tones. Each subcarrier hums away at 312.5k symbols/second. Data is blocked into 3.2-microsecond frames with an additional 0.8 microsecond of cyclic prefix tacked on for mitigation of intersymbol interference, and the data frame and the cyclic prefix thereof forms a data symbol lasting for 4 μs. A 64-point fast Fourier transform is performed over 3.2 microseconds to extract the 48 data symbols on the 48 QAM signals. For binary phase-shift keying (BPSK), with 1 bit per symbol, that is 48 bits in 4 microseconds, for an aggregate data rate of 12 Mbits/s. Half-rate convolutional coding brings the net rate down to 6 Mbits/s. For 64 QAM, the aggregate data rate is six times higher, or 72 Mbits/s.
FIG. 1 illustrates the main function blocks of the transmitter end 100 of the OFDM baseband processor according to the IEEE 802.11a standard. The main function blocks of the transmitter end include a signal mapper 102, a serial to parallel converter 104, an inverse fast Fourier transform (IFFT) block 106, a parallel to serial converter 108, a cyclic prefix (CP) adding block 110, a digital to analog converter (DAC) 112, and a radio frequency (RF) transmitter 114. OFDM is a multi-carrier modulation technique. First, the data stream is modulated with signal mapper 102 using modulation techniques such as Quadrature Amplitude Modulation (QAM) or Binary Phase Shift keying (BPSK). The next step in OFDM modulation is to convert the serial data into parallel data streams with the serial to parallel converter 104. The Inverse Fast Fourier transform (IFFT) is performed on the modulated data with the IFFT block 106. The IFFT is at the heart of the OFDM modulation, as it provides a simple way to modulate data streams onto orthogonal subcarriers. The data streams before and after IFFT are designated as X[n] and x[n] to represent frequency domain data and time domain data respectively, wherein n represents the order number of the subcarriers. After the IFFT, the parallel data streams are concatenated into a single data stream by the parallel to serial converter 108. Finally a characteristic cyclic prefix (CP) is added to each OFDM symbol being transmitted in the single data stream with the cyclic prefix adding block 110. The OFDM symbol is now ready, and after conversion from digital to analog form by the DAC 112 and modulation by the RF transmitter with a carrier frequency fc, the symbol is sent over the channel 150 as RF signals to the receiver end.
FIG. 2 illustrates the main function blocks of receiver end 200 of the OFDM baseband processor according to the IEEE 802.11a standard. The main function blocks of the receiver end 200 include a RF receiver 202, a sampler 204, a synchronization block 206, a cyclic prefix remover 208, a serial to parallel converter 210, a fast Fourier transform (FFT) block 212, a channel estimation and equalization block 214, a parallel to serial converter 216, and a signal demapper 218. The receiver end 200 performs the inverse of the transmitter end 100. After transmitting through channel 150, the signal is received by the RF receiver 202 with carrier frequency fc′. The received signal is then passed to the sampler 204 and sampled. Then, the data samples are compensated for carrier frequency offset (CFO) with the CFO correction block 226 inside the synchronization block. 206 wherein the CFO is caused by the difference between carrier frequency of transmitter end 100 and receiver end 200 (fc and fc′). The other function blocks inside the synchronization block 206 are frame detection block 220 and timing synchronization block 224. Frame detection is for detecting the symbol frame of the data samples, and timing synchronization is to detect the symbol boundary of the data samples inside a data frame. The receiver end 200 must determine the symbol boundary to assure that only the signal part of every OFDM symbol is written into the FFT and no part of the cyclic prefix. Implementing timing synchronization can also avoid Inter Symbol Interference (ISI) caused from sampling timing error. After the cyclic prefix of symbols are removed with the CP removal block 208, the data samples are converted form serial to parallel, and applied to the FFT block 212. The Fast Fourier Transform (FFT) converts the time domain samples back into a frequency domain. Because the signal through channel 150 has suffered from frequency selective attenuation, the data samples are passed to the channel estimation and equalization block 214 to equalize the attenuation. The parallel to serial converter block 216 converts the parallel data samples into a serial data stream. Finally, the data stream is demodulated with QAM or BPSK scheme by signal demapper 218 to recover the original input data.
FIG. 3 shows the OFDM burst mode frame structure 300 which actually has four distinct regions. The first is the short preamble 302. This is followed by a long-preamble 304 and, finally, by the signal symbol 306 and data symbols 308. Guard intervals 312, 314, 316 and 318 are inserted between each burst section. The short preamble 302 consists of 10 identical short OFDM training symbols 322, and each short training symbol 322 lasts for 0.8 μs and contains 16 data samples. The long preamble 304 consists of two identical long training symbols (LTS) 324 and 326, and each long training symbol lasts for 3.2 μs and contains 64 data samples. Between the short and long OFDM symbols, there is a guard interval (GI2) 312 of length 1.6 μs (32 data samples) that constitutes the cyclic prefix of the long symbols. Short training symbol 302 is used for frame detection, coarse timing synchronization, and carrier frequency offset (CFO) estimation. Long training symbols 324 and 326 are used for fine timing synchronization and channel estimation. Signal symbol 328 contains information about data rate, data length, and modulation scheme. Data symbols 330 and 332 contain the payload data and are of variable length.
The traditional method to implement fine timing synchronization in timing synchronization block 224 shown in FIG. 2 uses both long training symbols. Received long preamble 304 consists of guarding interval 312, first received long training symbol 324 and second received long training symbol 326, each of which contains 32, 64, 64 data samples respectively. The traditional method averages the data samples of the two received long training symbols 324 and 326 for noise reduction. Then the averaged data samples are fed into a matched filter, which correlates the averaged data samples with the conjugate of the ideal data samples of a long training symbol free from distortion of the transmission path. The output of the matched filter is calculated according to the following algorithm:
            MF      ⁡              (        n        )              =                  ∑                  i          =          1                64            ⁢                          ⁢                        RLTS          ⁡                      (                          n              +              i                        )                          ×                              LTS            ⁡                          (              i              )                                _                      ,wherein MF(n) indicates the output value of the matched filter, n represents sample index, RLTS indicates the averaged data samples of the first received long training symbol 324 and the second received long training symbol 326, and LTS indicates the ideal data samples of a long training symbol. There should be a peak value among the output of the matched filter, and the time index of the sample generating the peak value corresponding to the midpoint of the long training symbol. Thus the boundary of the received long training symbol can be inferred according to its midpoint and the sampling process can then be revised according to the symbol boundary to avoid inter-symbol interference.
However, because the traditional method for fine timing synchronization uses both received long training symbols in the averaging process to calculate the input of matched filter, it causes latency for performing the following processes such as FFT. Moreover, the determination of the peak output from the matched filter is often seriously interfered by pre-peak that appears before the main peak, so the midpoint of the symbol determined from the main peak is often imprecise.